package com.hnust.service;

import com.hnust.domain.*;
import okhttp3.RequestBody;
import okhttp3.ResponseBody;
import retrofit2.Callback;

import java.io.File;
import java.io.InputStream;
import java.util.List;
import java.util.Map;

/**
 * 创建人：zhangRuWang
 * 创建时间：2020/10/28
 * 描述：
 */
public interface TestPaperService {
    void getCourseData(Callback<Result<List<CourseData>>> callback, String id, String token);
    void getCourseQuesList(Callback<Result<List<QuestionType>>> callback,String token,String id);
    void getQuestion(Callback<Result<SubjectInfo>> callback,String token,String course_id,String type_id,String now_page);
    void getQuesByCon(Callback<Result<SubjectInfo>> callback,String token,String id,String course_id,String type_id,String keyword,Integer diff,String now_page);
    void checkPaperRepeat(Callback<Result<List<RepeatQues>>> callback,String token,String id,String course_id,List<String> subject_ids);
    void getPaperList(Callback<Result<PaperInfo>> callback, String token, String id, String course_id, int now_page);
    void delTestPaper(Callback<Result<Integer>> callback,String token,List<String> paper_ids);
    void changePaperType(Callback<Result<Integer>>callback,String token,List<String> paper_ids);
    void getPaperPreview(Callback<Result<Object>>callback,String paperId);
    void removePaperType(Callback<Result<Integer>>callback,String token,List<String> paper_ids);
    void createPaper(Callback<Result<String>> callback,GeneratePaperInfoRecord generatePaperInfoRecord);
    void getPaperpic(Callback<ResponseBody> callback, String paperId);
    void getPaperdocx(Callback<ResponseBody> callback, String paperId);
    void getPaperAnswerdocx(Callback<ResponseBody> callback, String paperId);
    void getPaperPlandocx(Callback<ResponseBody> callback, String paperId);
    void getAutoPaper(Callback<Result<List<SubjectData>>> callback, String course_id, RequestBody list, String token);
    void setDiasbleQue(Callback<Result<Boolean>> callback,String token,List<String> subject_ids);
}
